#include"heap.h"

//void test1()
//{
//	hp h;
//	int a[] = { 8,5,6,9,7,4,5,2,3,12 };
//	HPInit(&h);
//	for (int i = 0; i < sizeof(a) / sizeof(a[0]); i++)
//	{
//		HPPush(&h, a[i]);
//	}
//	int k = 0;
//	scanf("%d", &k);
//	while (k--)
//	{
//		printf("%d ", HPTop(&h));
//		HPPop(&h);
//	}
//	
//	HPDestroy(&h);
//}

void heapsort(int* a, int n)
{
	/*for (int i = 1; i < n; i++)
	{
		AdjustUp(a, i);
	}*/
	for (int i = (n - 1 - 1) / 2; i >= 0; i--)
	{
		AdjustDown(a, n, i);
	}
	/*int end = n - 1;
	while (end > 0)
	{
		Swap(&a[0], &a[end]);
		AdjustDown(a, end, 0);
		end--;
	}*/
}

void test2()
{
	int a[] = { 8,5,6,9,7,4,5,2,3,12 };
	heapsort(a, sizeof(a) / sizeof(a[0]));
}
int main()
{
	//test1();
	test2();
	return 0;
}